Communications networks are ubiquitous. The Internet is everywhere and carriers are attempting to provide more and more services over it to their customers.
U.S. patent application Ser. No. 11/615,977, assigned to the common assignees of the present invention and incorporated herein by reference, describes a metropolitan edge network which attempts to concentrate on the services to be provided rather than on the topology of the network and/or the line configuration. An exemplary metropolitan edge network 40 is shown in FIG. 1, to which reference is now made.
For each service, the metropolitan edge network allocates a mailbox 22 whose size and quality of service (defined by bandwidth, download rates, security control, etc.) may be a function of the amount of data to be transferred there through at any given time. Mailboxes 22 act as buffers, where data may be written in at one end and read out at the other end.
The definition of mailboxes may be straightforward from tables of services that the carriers maintain anyway. Such tables exist for billing, for customer service, for bandwidth allocation, etc. The metropolitan edge network of the present invention may access such tables to define the size and quality of service (QoS) requirements for its mailboxes 22 and may store such information in its own table 30 of services. Metropolitan edge network 40 may also comprise a multiplicity of grid routers 42, of which an exemplary three (with reference letters A, B and C) are shown in FIG. 1. Routers 42 may be connected together with a ring 41.
Each router 42 may comprise an external interface unit (EIU 44 and a mailbox unit (MU) 46. Each external interface unit 44 may provide connections to its associated customers and to ring 41 and each mailbox unit 46 may hold and manage mailboxes 22. However, because metropolitan edge network 40 may be a distributed network, the mailboxes 22 of the associated customers of one external interface unit 44 may not necessarily be stored in the mailbox unit 46 of the same router 42. The location of each mailbox may be a function of the type of service being provided and whether or not it needs to be located near the customer or near the source for efficient operation. Mailbox units 46 may comprise a multiplicity of buffers, for the mailboxes, and management units to add and delete mailboxes as required by the table of services 30.
For each incoming data packet, each external interface unit 44 may determine which mailbox unit 46 may manage the mailbox 22 for the service being transmitted by the data packet. Each external interface unit 44 may perform a hashing function on at least some of the information in a header of the data packet. The resultant hash value may be the mailbox number within metropolitan edge network 40 for the service carried by the data packet. With the mailbox number, the external interface unit 44 may directly write (typically using remote DMA (rDMA)) the data packet to the indicated mailbox 22.
For example, the Smith Family, labeled 50, may request a video on demand from VOD, labeled 52. The Smith Family, labeled 50, may register the request for the service and metropolitan edge network 40 may create a mailbox 22B1 for that service and may allocate an external interface unit 44, such as EIU 44A, for the service as well. VOD 52 may send its VOD datastream to router 42A, the router closest to it. External interface unit 44A may hash the destination address, that of the Smith Family, and may determine that the Smith Family's mailbox for VOD 52, mailbox 22B1, may be located in mailbox unit 46B. Accordingly, external interface unit 44A may write the datastream to mailbox 22B1 in mailbox unit 46B. When the Smith Family's set-top box may connect to router 42B, the router closest to it, mailbox unit 46B may send the packets stored in mailbox 22B1 to the Smith Family's set-top box, via external interface unit 44B.
Another service is that of two people, for example Dana Smith and her friend Ann, talking over VoIP. In this example, Dana Smith's mailbox 22B2 may be located in mailbox unit 46B, close to her house, while Ann's mailbox 22C may be located in a different mailbox unit, for example 46C.
When Ann talks on her VoIP telephone, her computer may send her voice datastream to router 42C, the router with which she is associated. External interface unit 44C may hash the destination address, that of Dana Smith, and may determine that Dana Smith's mailbox for VoIP, mailbox 22B2, may be located in mailbox unit 46B. Accordingly, external interface unit 44C may write the datastream to mailbox 22B2 in mailbox unit 46B and mailbox unit 46B may forward the packets to Dana's VoIP telephone through external interface unit 44B.